home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 1995 #5 & #6 / Amiga Plus CD - 1995 - No. 5 and 6.iso / pd / serien / purity / nr.43 / os2unit / os2unit.dok < prev    next >
Text File  |  1995-01-07  |  15KB  |  901 lines

  1.  
  2. OS2Unit by Björn Schotte
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.                                 OS2-Unit
  10.  
  11.  
  12.  
  13.                           ©1994 by Björn Schotte
  14.  
  15.  
  16.  
  17.                               - GIFTWARE -
  18.  
  19.  
  20.  
  21.   1. Willkommen
  22.   2. Warum diese Unit?
  23.  
  24.   3. Die einzelnen Funktionen
  25.  
  26.   4. Hinweise
  27.  
  28.   5. History
  29.  
  30.   6. Adresse/Copyright
  31.  
  32. 1. Willkommen
  33.  
  34.  
  35. Willkommen zur OS2-Unit. Freut mich, daß Sie es doch noch
  36. geschafft haben, die Anleitung durchzulesen. Ich wünsche
  37. Ihnen noch viel Spaß mit dieser Unit und hoffe, daß Sie
  38. zufrieden sind.
  39.  
  40.                Björn Schotte
  41.  
  42. 2. Warum diese Unit?
  43.  
  44.  
  45. Nun, da ich schon seit geraumer Zeit nur noch Programme
  46. entwickle, die ab OS2.0 funktionieren, wollte ich die
  47. Entwicklung noch etwas vereinfachen, indem ich mir einen
  48. Befehlssatz, der in (fast) jedem Programm vorkommt, in
  49. eine Unit auslagerte.
  50.  
  51. OS2.x stellt ja bekanntlich viele tolle Eigenschaften zur
  52. Verfügung, z.B. neue (einfache) Gadgets etc. Dies wird z.B.
  53. durch die gadtools.library zur Verfügung gestellt. Und
  54. genau mit dieser Library beschäftigt sich diese Unit...
  55.  
  56. Es werden z.B. auch Routinen vorgestellt, die das fontsensi-
  57. tive Programmieren von GUIs vereinfachen...
  58.  
  59. 3. Die Funktionen
  60.  
  61.  
  62. Alphabetische Liste aller Prozeduren/Funktionen, die von der
  63. Unit zur Verfügung gestellt werden:
  64.  
  65. ActStringGad
  66. ASLFileReq
  67. CloseASL
  68. CloseGadTools
  69. ComputeFont
  70. ComputeX
  71. ComputeY
  72. FS_BevelBox
  73. GadSelect
  74. GhostGadget
  75. InitASLStruct
  76. SensitivGadget
  77. SetCheckBox
  78. SetCycleGad
  79. SetListViewGad
  80. SetListViewList
  81. SetMXGad
  82. SetNumberGad
  83. OpenASL
  84. OpenGadTools
  85.  
  86.  
  87. Zu beachten ist auch, daß im Interface-Teil einige Variablen
  88. definiert werden, die vom Programm ausgefüllt werden muß, damit
  89. fontsensitives Programmieren möglich ist:
  90.  
  91. ScreenW     : Breite des Screens, auf dem das Fenster
  92.               geöffnet werden soll.
  93. ScreenH     : Analog dazu die Höhe.
  94. WBRight     : Breite des Rahmens auf der rechten Seite.
  95.               (sp^.WBorRight);
  96. WBBottom    : Höhe des Rahmens auf der unteren Seite.
  97.               (sp^.WBorBottom);
  98. XOff        : sp^.WBorLeft;
  99. YOff        : sp^.BarHeight;
  100.  
  101. (VAR sp:p_Screen)
  102.  
  103. OS2-Unit/ActStringGad
  104.  
  105.  
  106. NAME
  107.  
  108.    ActStringGad
  109.  
  110. SYNOPSIS
  111.  
  112.    ActStringGad(wp,gad,req);
  113.  
  114.    wp  : p_Window;
  115.    gad : p_Gadget;
  116.    req : p_Requester;
  117.  
  118. ERKLÄRUNG
  119.  
  120.    Diese Prozedur aktiviert das Gadget im Window und,
  121.    sofern nötig, im angegebenen Requester
  122.  
  123. RÜCKGABE
  124.  
  125.    Keine.
  126.  
  127. BUGS
  128.  
  129.    Keine bekannt.
  130.  
  131. OS2-Unit/ASLFileReq
  132.  
  133.  
  134. NAME
  135.  
  136.    ASLFileReq
  137.  
  138. SYNOPSIS
  139.  
  140.    LONG = ASLFileReq(ASLStruct);
  141.  
  142.    ASLStruct : ASLFileStruct;
  143.  
  144.    ASLFileStruct = RECORD
  145.           left, top,               { Linke Ecke, rechte Ecke,      }
  146.           width,                   { Breite und                    }
  147.           height     : INTEGER;    { Höhe d. FileReqs (optional)   }
  148.           titel      : STRING[80]; { Titel des FileReqs            }
  149.           pfad,                    { Hier werden Pfad und Datei    }
  150.           datei,                   { von der Prozedur abgelegt.    }
  151.           initp,                   { Vorgegebener Pfad/Datei, der  }
  152.           initd,                   { als erstes im Req dargestellt }
  153.                                    { werden soll.                  }
  154.           filename   : STRING[256];{ Hier wird von der Prozedur ein}
  155.                                    { vollständiger Filename erstellt}
  156.                                    { also z.B. "Work:xx/yy"         }
  157.           pattern    : STRING[80]; { Muster (z.B. "~(#?.info)" (optional) }
  158.           display_pat: BOOLEAN;    { Soll ein String-Gadget im Req }
  159.                                    { dargestellt werden, damit man }
  160.                                    { das Pattern ändern kann ?     }
  161.           win        : p_Window;   { Zugehöriges Window des Reqs (opt.) }
  162.           winsleep,                { Soll Wartezeiger + unsichtb. Req }
  163.                                    { auf <win> geöffnet werden ? }
  164.           canceled   : BOOLEAN;    { Wurde der Requester gecanceled ? }
  165.           negativ,                 { Negativer Gadget-Text (opt.) }
  166.           positiv    : STRING;     { Positiver Gadget-Text (opt.) }
  167.    END;
  168.  
  169.  
  170. ERKLÄRUNG
  171.  
  172.    Diese mächtige Funktion stellt einen ASLFile-Requester dar.
  173.    Zu beachten ist, daß die "asl.library" mit der Funktion
  174.    OpenASL zu öffnen ist, denn die Prozedur tut das nicht
  175.    selber !! Auch die "dos.library" muß geöffnet werden, da
  176.    die Prozedur eine Funktion aus der Library verwendet.
  177.  
  178.    Als erstes muß das Programm, daß die Funktion aufruft, mit
  179.    der Prozedur InitASLStruct sicherstellen, daß alle Variablen
  180.    der Struktur initialisiert werden.
  181.  
  182.    Als nächstes initialisiert man im Programm die Struktur mit
  183.    seinen eigenen Werten, bei den meisten braucht man, wenn man
  184.    das gewünschte Feature nicht haben will, nichts eintragen.
  185.    O.g. Variablen haben in der Eklärung ein "opt.", wenn diese
  186.    Variable nicht zwingend ausgefüllt werden muß.
  187.  
  188.    Man füllt also diese Struktur aus und übergibt Sie der Funktion.
  189.    Die Funktion retourniert 0, wenn alles klar ist, ansonsten
  190.    FREQ_NOALLOC (=-100). Dies bedeutet, daß die Allokation per
  191.    AllocASLRequest() fehlgeschlagen ist!
  192.  
  193.    In der eigenen Struktur, die man ASLFileReq() übergeben hat,
  194.    findet sich unter <filename> der vollständige Dateiname inkl.
  195.    "/" oder ":" bei Verzeichnis-/Disknamen. Unter <pfad> und
  196.    <datei> findet man jeweils den einzelnen Pfad bzw. die einzelne
  197.    Datei. Unter pattern findet man entweder das alte Pattern bzw.
  198.    ein neues, falls der Benutzer im Filerequester ein neues einge-
  199.    geben hat. <initp> und <initd> erhalten die Werte von <pfad>
  200.    und <datei><canceled> ist TRUE, wenn der Benutzer den
  201.    Filerequester gecancelt hat.
  202.  
  203.    Ich hoffe, daß damit alles klar ist!
  204.  
  205. RÜCKGABE
  206.  
  207.    0, wenn alles klar ist, ansonsten
  208.    FREQ_NOALLOC (=-100), wenn das Allokieren der FileRequester-Struktur
  209.    per AllocASLRequest() fehlgeschlagen ist.
  210.  
  211. BUGS
  212.  
  213.    Keine bekannt.
  214.  
  215. OS2-Unit/CloseASL
  216.  
  217.  
  218. NAME
  219.  
  220.    CloseASL
  221.  
  222. SYNOPSIS
  223.  
  224.    CloseASL
  225.  
  226. ERKLÄRUNG
  227.  
  228.    Schliesst die evtl. geöffnete "asl.library".
  229.  
  230. RÜCKGABE
  231.  
  232.    Keine.
  233.  
  234. BUGS
  235.  
  236.    Keine bekannt.
  237.  
  238. SIEHE AUCH
  239.  
  240.    OpenASL
  241.  
  242. OS2-Unit/CloseGadTools
  243.  
  244.  
  245. NAME
  246.  
  247.    CloseGadTools
  248.  
  249. SYNOPSIS
  250.  
  251.    CloseGadTools;
  252.  
  253. ERKLÄRUNG
  254.  
  255.    Schliesst die evtl. geöffnete "gadtools.library".
  256.  
  257. RÜCKGABE
  258.  
  259.    Keine
  260.  
  261. BUGS
  262.  
  263.    Keine bekannt
  264.  
  265. SIEHE AUCH
  266.  
  267.    OpenGadTools
  268.  
  269. OS2-Unit/ComputeFont
  270.  
  271.  
  272. NAME
  273.  
  274.    ComputeFont
  275.  
  276. SYNOPSIS
  277.  
  278.    ComputeFont(TheFont, width, height);
  279.  
  280.    TheFont : p_TextFont;
  281.    width,
  282.    height  : INTEGER;
  283.  
  284. ERKLÄRUNG
  285.  
  286.    Hauptprozedur für fontsensitive GUIs.
  287.    Übergeben wird ein Font und Breite und Höhe bei
  288.    topaz/8-Font (z.B. fürs Fenster-Öffnen).
  289.    Die Prozedur berechnet als erstes die Breite
  290.    und Höhe bei TheFont und überprüft dann, ob diese
  291.    auf den Screen passen.
  292.  
  293.    Folgende Variablen müssen "von Hand" initialisiert
  294.    werden:
  295.  
  296.    ScreenW, ScreenH, WBRight, WBBottom, XOff, YOff
  297.  
  298. RÜCKGABE
  299.  
  300.    Keine.
  301.  
  302. BUGS
  303.  
  304.    Keine bekannt.
  305.  
  306. SIEHE AUCH
  307.  
  308.    ComputeX
  309.    ComputeY
  310.  
  311. OS2-Unit/ComputeX
  312.  
  313.  
  314. NAME
  315.  
  316.    ComputeX
  317.  
  318. SYNOPSIS
  319.  
  320.    LONG = ComputeX(value);
  321.  
  322.    value : INTEGER;
  323.  
  324. ERKLÄRUNG
  325.  
  326.    Übergeben wird die Breite bei topaz/8-Font.
  327.    ComputeX berechnet dann die Breite bei TheFont
  328.    von ComputeFont.
  329.  
  330. RÜCKGABE
  331.  
  332.    Breite bei TheFont.
  333.  
  334. BUGS
  335.  
  336.    Keine bekannt.
  337.  
  338. SIEHE AUCH
  339.  
  340.    ComputeFont
  341.  
  342. OS2-Unit/ComputeY
  343.  
  344.  
  345. NAME
  346.  
  347.    ComputeY
  348.  
  349. SYNOPSIS
  350.  
  351.    LONG = ComputeY(value);
  352.  
  353.    value : INTEGER;
  354.  
  355. ERKLÄRUNG
  356.  
  357.    Übergeben wird die Höhe bei topaz/8-Font.
  358.    ComputeY berechnet dann die Höhe bei TheFont
  359.    von ComputeFont.
  360.  
  361. RÜCKGABE
  362.  
  363.    Höhe bei TheFont.
  364.  
  365. BUGS
  366.  
  367.    Keine bekannt.
  368.  
  369. SIEHE AUCH
  370.  
  371.    ComputeFont
  372.  
  373. OS2-Unit/FS_BevelBox
  374.  
  375.  
  376. NAME
  377.  
  378.    FS_BevelBox
  379.  
  380. SYNOPSIS
  381.  
  382.    FS_BevelBox(wp,vi,x,y,b,h,recessed);
  383.  
  384.    wp       : p_Window;
  385.    vi       : PTR; { VisualInfo }
  386.    x,y      : INTEGER; { Linke, obere Ecke }
  387.    b,h      : INTEGER; { Breite und Höhe }
  388.    recessed : BOOLEAN; { Rahmen "eingedrückt" ?? }
  389.  
  390. ERKLÄRUNG
  391.  
  392.    Zeichnet eine fontsensitive BevelBox.
  393.  
  394. RÜCKGABE
  395.  
  396.    Keine
  397.  
  398. BUGS
  399.  
  400.    Keine bekannt.
  401.  
  402. OS2-Unit/GadSelect
  403.  
  404.  
  405. NAME
  406.  
  407.    GadSelect
  408.  
  409. SYNOPSIS
  410.  
  411.    GadSelect(wp,gad);
  412.  
  413.    wp  : p_Window;
  414.    gad : p_Gadget;
  415.  
  416. ERKLÄRUNG
  417.  
  418.    Per GT_Underscore kann man bei einem Gadget bestimmen,
  419.    welcher Buchstabe unterstrichen werden muss. Dies be-
  420.    deutet, daß man das Gadget auch über die Tastatur
  421.    anwählen kann. Um dies sichtbar zu machen, existiert
  422.    diese Prozedur. Ihr wird das Fenster und das Gadget
  423.    übergeben.
  424.  
  425.    ACHTUNG: Die Tastendrücke, die vom Programm empfangen
  426.             werden, müssen vom Typ IDCMP_RAWKEY sein !!
  427.  
  428.    Wenn man also im Programm eine Message vom Typ
  429.    IDCMP_RAWKEY empfangen hat, muss man den Tastendruck
  430.    abfragen. Es muss aber nur der msg^.Code beim Drücken
  431.    der Taste abgefragt werden, damit die Prozedur auf
  432.    eine Release warten kann!!
  433.  
  434. RÜCKGABE
  435.  
  436.    Keine.
  437.  
  438. BUGS
  439.  
  440.    Keine bekannt.
  441.  
  442. OS2-Unit/GhostGadget
  443.  
  444.  
  445. NAME
  446.  
  447.    GhostGadget
  448.  
  449. SYNOPSIS
  450.  
  451.    GhostGadget(wp,gad,req,dis);
  452.  
  453.    wp     : p_Window;
  454.    gad    : p_Gadget;
  455.    req    : p_Requester; (optional)
  456.    dis    : BOOLEAN;
  457.  
  458. ERKLÄRUNG
  459.  
  460.    Übergeben wird das Fenster, das Gadget und, wenn nötig,
  461.    der Requester, in dem das Gadget "liegt". Weiterhin
  462.    wird entweder TRUE oder FALSE übergeben, jenachdem, wie
  463.    man das Gadget haben will: TRUE, um es zu "ghosten", an-
  464.    sonsten FALSE.
  465.  
  466. RÜCKGABE
  467.  
  468.    Keine.
  469.  
  470. BUGS
  471.  
  472.    Keine bekannt.
  473.  
  474. OS2-Unit/InitASLStruct
  475.  
  476.  
  477. NAME
  478.  
  479.    InitASLStruct
  480.  
  481. SYNOPSIS
  482.  
  483.    InitASLStruct(ASLStruct);
  484.  
  485.    ASLStruct : ASLFileStruct;
  486.  
  487. ERKLÄRUNG
  488.  
  489.    Diese Funktion steht in Verbindung mit ASLFileReq().
  490.    Sie muß vom aufrufenden Programm vor (!) dem ersten
  491.    Benutzen von ASLFileReq() aufgerufen werden. Mit ihr
  492.    wird die übergebene ASLFileStruct initialisiert.
  493.  
  494. RÜCKGABE
  495.  
  496.    Keine.
  497.  
  498. BUGS
  499.  
  500.    Keine bekannt.
  501.  
  502. SIEHE AUCH
  503.  
  504.    ASLFileReq
  505.  
  506. OS2-Unit/SensitivGadget
  507.  
  508.  
  509. NAME
  510.  
  511.    SensitivGadget
  512.  
  513. SYNOPSIS
  514.  
  515.    SensitivGadget(ng);
  516.  
  517.    ng : NewGadget;
  518.  
  519. ERKLÄRUNG
  520.  
  521.    Verändert die Koordinaten der NewGadget-Struktur so,
  522.    daß sie sich fontsensitiv anpassen...
  523.  
  524.    ACHTUNG: In der NewGadget-Struktur müssen die Koor-
  525.             dinaten so eingetragen sein, als ob sie
  526.             dem topaz/8-Font entsprechen würden !!
  527.  
  528. RÜCKGABE
  529.  
  530.    Keine.
  531.  
  532. BUGS
  533.  
  534.    Keine bekannt.
  535.  
  536. OS2-Unit/SetCheckBox
  537.  
  538.  
  539. NAME
  540.  
  541.    SetCheckBox
  542.  
  543. SYNOPSIS
  544.  
  545.    SetCheckBox(wp,gad,req,flag);
  546.  
  547.    wp     : p_Window;
  548.    gad    : p_Gadget;
  549.    req    : p_Requester;
  550.    flag   : BOOLEAN;
  551.  
  552. ERKLÄRUNG
  553.  
  554.    Stellt ein CheckBox-Gadget mit Häkchen (=aktiviert)
  555.    oder ohne dar.
  556.  
  557. RÜCKGABE
  558.  
  559.    Keine.
  560.  
  561. BUGS
  562.  
  563.    Keine bekannt.
  564.  
  565. SIEHE AUCH
  566.  
  567.    SetCycleGad
  568.    SetListViewGad
  569.    SetListViewList
  570.    SetMXGad
  571.    SetNumberGad
  572.  
  573. OS2-Unit/SetCycleGad
  574.  
  575.  
  576. NAME
  577.  
  578.    SetCycleGad
  579.  
  580. SYNOPSIS
  581.  
  582.    SetCycleGad(wp,gad,req,active);
  583.  
  584.    wp     : p_Window;
  585.    gad    : p_Gadget;
  586.    req    : p_Requester;
  587.    active : LONG;
  588.  
  589. ERKLÄRUNG
  590.  
  591.    Setzt den CycleGadget-Text Nr. <active> (von 0
  592.    beginnend!)
  593.  
  594. RÜCKGABE
  595.  
  596.    Keine.
  597.  
  598. BUGS
  599.  
  600.    Keine bekannt.
  601.  
  602. SIEHE AUCH
  603.  
  604.    SetCheckBox
  605.    SetListViewGad
  606.    SetListViewList
  607.    SetMXGad
  608.    SetNumberGad
  609.  
  610.  
  611. OS2-Unit/SetListViewGad
  612.  
  613.  
  614. NAME
  615.  
  616.    SetListViewGad
  617.  
  618. SYNOPSIS
  619.  
  620.    SetListViewGad(wp,gad,req,active,top);
  621.  
  622.    wp     : p_Window;
  623.    gad    : p_Gadget;
  624.    req    : p_Requester;
  625.    active,
  626.    top    : LONG;
  627.  
  628. ERKLÄRUNG
  629.  
  630.    Setzt den aktiven Eintrag eines ListView-Gadgets.
  631.    Ausserdem wird noch das oberste sichtbare Listen-
  632.    Element mit angegeben (top).
  633.  
  634. RÜCKGABE
  635.  
  636.    Keine.
  637.  
  638. BUGS
  639.  
  640.    Keine bekannt.
  641.  
  642. SIEHE AUCH
  643.  
  644.    SetCheckBox
  645.    SetCycleGad
  646.    SetListViewList
  647.    SetMXGad
  648.    SetNumberGad
  649.  
  650. OS2-Unit/SetListViewList
  651.  
  652.  
  653. NAME
  654.  
  655.    SetListViewList
  656.  
  657. SYNOPSIS
  658.  
  659.    SetListViewList(wp,gad,req,NeueList);
  660.  
  661.    wp       : p_Window;
  662.    gad      : p_Gadget;
  663.    req      : p_Requester;
  664.    NeueList : p_List;
  665.  
  666. ERKLÄRUNG
  667.  
  668.    Setzt die Liste eines ListView-Gadgets neu.
  669.  
  670. RÜCKGABE
  671.  
  672.    Keine.
  673.  
  674. BUGS
  675.  
  676.    Keine bekannt.
  677.  
  678. SIEHE AUCH
  679.  
  680.    SetCheckBox
  681.    SetCycleGad
  682.    SetListViewGad
  683.    SetMXGad
  684.    SetNumberGad
  685.  
  686. OS2-Unit/SetMXGad
  687.  
  688.  
  689. NAME
  690.  
  691.    SetMXGad
  692.  
  693. SYNOPSIS
  694.  
  695.    SetMXGad(wp,gad,req,active);
  696.  
  697.    wp        : p_Window;
  698.    gad       : p_Gadget;
  699.    req       : p_Requester;
  700.    active    : LONG;
  701.  
  702. ERKLÄRUNG
  703.  
  704.    Setzt das aktive MX-Element.
  705.  
  706. RÜCKGABE
  707.  
  708.    Keine
  709.  
  710. BUGS
  711.  
  712.    Keine bekannt
  713.  
  714. SIEHE AUCH
  715.  
  716.    SetCheckBox
  717.    SetCycleGad
  718.    SetListViewGad
  719.    SetListViewList
  720.    SetNumberGad
  721.  
  722.  
  723. OS2-Unit/SetNumberGad
  724.  
  725.  
  726. NAME
  727.  
  728.    SetNumberGad
  729.  
  730. SYNOPSIS
  731.  
  732.    SetNumberGad(wp,gad,req,nummer);
  733.  
  734.    wp       : p_Window;
  735.    gad      : p_Gadget;
  736.    req      : p_Requester;
  737.    nummer   : LONG;
  738.  
  739. ERKLÄRUNG
  740.  
  741.    Setzt ein Number-Gadget mit dem Wert <nummer>.
  742.  
  743. RÜCKGABE
  744.  
  745.    Keine
  746.  
  747. BUGS
  748.  
  749.    Keine bekannt
  750.  
  751. SIEHE AUCH
  752.  
  753.    SetCheckBox
  754.    SetCycleGad
  755.    SetMXGad
  756.    SetListViewGad
  757.    SetListViewList
  758.  
  759.  
  760. OS2-Unit/OpenASL
  761.  
  762.  
  763. NAME
  764.  
  765.    OpenASL
  766.  
  767. SYNOPSIS
  768.  
  769.    BOOLEAN = OpenASL(version);
  770.  
  771.    version : INTEGER;
  772.  
  773. ERKLÄRUNG
  774.  
  775.    Versucht, die "asl.library" mit der Version <version>
  776.    oder höher, zu öffnen.
  777.  
  778. RÜCKGABE
  779.  
  780.    TRUE, falls die Library geöffnet werden konnte, ansonsten
  781.    FALSE.
  782.  
  783. BUGS
  784.  
  785.    Keine bekannt.
  786.  
  787. SIEHE AUCH
  788.  
  789.    CloseASL
  790.  
  791. OS2-Unit/OpenGadTools
  792.  
  793.  
  794. NAME
  795.  
  796.    OpenGadTools
  797.  
  798. SYNOPSIS
  799.  
  800.    BOOLEAN = OpenGadTools(version);
  801.  
  802.    version : INTEGER;
  803.  
  804. ERKLÄRUNG
  805.  
  806.    Versucht, die "gadtools.library" mit der Version <version>
  807.    oder höher, zu öffnen.
  808.  
  809. RÜCKGABE
  810.  
  811.    TRUE, falls die Library erfolgreich geöffnet werden konnte,
  812.    ansonsten FALSE.
  813.  
  814. BUGS
  815.  
  816.    Keine bekannt
  817.  
  818. SIEHE AUCH
  819.  
  820.    CloseGadTools
  821.  
  822. 4. Hinweise
  823.  
  824.  
  825.  
  826. Wichtig:
  827.  
  828. Das Programm, das diese Unit einbindet, muß (!) mit der Funktion
  829. OpenGadTools() dafür sorgen, daß die "gadtools.library"
  830. geöffnet wird!
  831.  
  832. 5. History
  833.  
  834.  
  835. -=-=-=-=-=-=-=-=-=-=-
  836. - Revision: V0.030  -
  837. -=-=-=-=-=-=-=-=-=-=-
  838.  
  839.   ASLFileReq() hinzugefügt. Mächtige Funktion 
  840.   zum Auswählen von Dateien.
  841.  
  842. -=-=-=-=-=-=-=-=-=-=-
  843. - Revision: V0.020  -
  844. -=-=-=-=-=-=-=-=-=-=-
  845.  
  846.   SetXXXGad-Prozeduren erweitert; 
  847.   GhostGadget(), GadSelect hinzugefügt.
  848.  
  849. -=-=-=-=-=-=-=-=-=-=-
  850. - Revision: V0.010  -
  851. -=-=-=-=-=-=-=-=-=-=-
  852.  
  853.   SetXXXGad-Prozeduren hinzugefügt.
  854.  
  855. -=-=-=-=-=-=-=-=-=-=-
  856. - Revision: V0.000  -
  857. -=-=-=-=-=-=-=-=-=-=-
  858.  
  859.   --- Initial release ---
  860.  
  861.  
  862. 6. Adresse/Copyright
  863.  
  864.  
  865. Diese Unit ist GIFTWARE, d.h. wenn es Ihnen gefällt, können (!) Sie
  866. mir etwas schicken, was ich als Spende auffassen werde, z.B.: Geld,
  867. PD-DisX, Pascal-Sources, Schokolade....
  868.  
  869. Das ist nicht zwingend, aber: Wer die Möglichkeit hat, EMail zu
  870. benutzen, der sollte (!) mir wenigstens eine nette Mail schreiben...
  871.  
  872. Auch Bug-Reports, Vorschläge etc. sind gern gesehen (ersteres nicht so
  873. gern :)
  874.  
  875.  
  876. Meine Adresse:
  877.  
  878.  
  879.                    Björn Schotte
  880.                    Am Burkardstuhl 45
  881.                    D-97267 Himmelstadt
  882.  
  883.                    Germany
  884.  
  885.  
  886.  
  887. EMail:
  888.  
  889.                    bombersoft@bomber.mayn.sub.de
  890.  
  891.  
  892.                              oder
  893.  
  894.  
  895.                    schotte@incubus.sub.org
  896.  
  897.                    (beides UseNet)
  898.  
  899.  
  900. Ich wünsche Ihnen viel Spass mit dieser Unit!
  901.